﻿using System;

namespace Unknown.Source.Entity.Example
{
	/// <summary>
	/// 艺术品实体类
	/// </summary>
	public class Artwork
	{
		/// <summary>
		/// 标识
		/// </summary>
		public string Pkid { get; set; }
		/// <summary>
		/// 博物馆
		/// </summary>
		public string Museum { get; set; }
		/// <summary>
		/// 名称
		/// </summary>
		public string Name { get; set; }
		/// <summary>
		/// 代码
		/// </summary>
		public string Code { get; set; }
		/// <summary>
		/// 英文说明
		/// </summary>
		public string EnglishDescription { get; set; }
		/// <summary>
		/// 英文备注
		/// </summary>
		public string EnglishRemark { get; set; }
		/// <summary>
		/// 中文说明
		/// </summary>
		public string ChineseDescription { get; set; }
		/// <summary>
		/// 中文备注
		/// </summary>
		public string ChineseRemark { get; set; }
		/// <summary>
		/// 图片
		/// </summary>
		[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1819:PropertiesShouldNotReturnArrays")]
		public byte[] Photo { get; set; }
		/// <summary>
		/// 视频
		/// </summary>
		[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1819:PropertiesShouldNotReturnArrays")]
		public byte[] Video { get; set; }
		/// <summary>
		/// 首次保养时间
		/// </summary>
		public DateTime FirstCareTime { get; set; }
		/// <summary>
		/// 末次保养时间
		/// </summary>
		public DateTime? LastCareTime { get; set; }
		/// <summary>
		/// 首次展出时间
		/// </summary>
		public DateTime FirstShowTime { get; set; }
		/// <summary>
		/// 末次展出时间
		/// </summary>
		public DateTime? LastShowTime { get; set; }
		/// <summary>
		/// 保养次数
		/// </summary>
		public int CareTimes { get; set; }
		/// <summary>
		/// 展出次数
		/// </summary>
		public int? ShowTimes { get; set; }
		/// <summary>
		/// 图片访问次数
		/// </summary>
		public long PhotoVisit { get; set; }
		/// <summary>
		/// 视频访问次数
		/// </summary>
		public long? VideoVisit { get; set; }
		/// <summary>
		/// 成本
		/// </summary>
		public decimal Cost { get; set; }
		/// <summary>
		/// 价值
		/// </summary>
		public decimal? Value { get; set; }

		/// <summary>
		/// 构造函数
		/// </summary>
		public Artwork()
		{
		}

		/// <summary>
		/// 构造函数
		/// </summary>
		/// <param name="pkid">标识</param>
		/// <param name="museum">博物馆</param>
		/// <param name="name">名称</param>
		/// <param name="code">代码</param>
		/// <param name="englishDescription">英文说明</param>
		/// <param name="englishRemark">英文备注</param>
		/// <param name="chineseDescription">中文说明</param>
		/// <param name="chineseRemark">中文备注</param>
		/// <param name="photo">图片</param>
		/// <param name="video">视频</param>
		/// <param name="firstCareTime">首次保养时间</param>
		/// <param name="lastCareTime">末次保养时间</param>
		/// <param name="firstShowTime">首次展出时间</param>
		/// <param name="lastShowTime">末次展出时间</param>
		/// <param name="careTimes">保养次数</param>
		/// <param name="showTimes">展出次数</param>
		/// <param name="photoVisit">图片访问次数</param>
		/// <param name="videoVisit">视频访问次数</param>
		/// <param name="cost">成本</param>
		/// <param name="value">价值</param>
		public Artwork(string pkid, string museum, string name, string code, string englishDescription, string englishRemark, string chineseDescription, string chineseRemark, byte[] photo, byte[] video, DateTime firstCareTime, DateTime? lastCareTime, DateTime firstShowTime, DateTime? lastShowTime, int careTimes, int? showTimes, long photoVisit, long? videoVisit, decimal cost, decimal? value)
		{
			this.Pkid = pkid;
			this.Museum = museum;
			this.Name = name;
			this.Code = code;
			this.EnglishDescription = englishDescription;
			this.EnglishRemark = englishRemark;
			this.ChineseDescription = chineseDescription;
			this.ChineseRemark = chineseRemark;
			this.Photo = photo;
			this.Video = video;
			this.FirstCareTime = firstCareTime;
			this.LastCareTime = lastCareTime;
			this.FirstShowTime = firstShowTime;
			this.LastShowTime = lastShowTime;
			this.CareTimes = careTimes;
			this.ShowTimes = showTimes;
			this.PhotoVisit = photoVisit;
			this.VideoVisit = videoVisit;
			this.Cost = cost;
			this.Value = value;
		}
	}
}
